package com.sti.framework.models.Aps.data;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.sti.framework.core.data.AbstractAuditingEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.models.auth.In;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;

/**
 * 表格： 模具数据 aps_model_info
 *
 * @author AutoApi
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName(value = "aps_model_info", autoResultMap = true)
@ApiModel(value = "aps_model_info", description = "模具数据")
public class ApsModelInfo extends AbstractAuditingEntity {
    
	/**
	 * 模具代码
	 */
	@TableField(value = "code")
	private String code;

	/**
	 * 规格
	 */
	@TableField(value = "spec")
	private String spec;

	/**
	 * 数量
	 */
	@TableField(value = "cnt")
	private Integer cnt;

	/**
	 * 重量
	 */
	@TableField(value = "weight")
	private BigDecimal weight;

	/**
	 * 类型
	 */
	@TableField(value = "type")
	private String type;

	/**
	 * 通过日期
	 */
	@TableField(value = "pass_date")
	@JsonFormat(pattern = "yyyy-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private LocalDate passDate;

	/**
	 * 状态
	 */
	@TableField(value = "status")
	private String status;

	/**
	 * 使用标志
	 */
	@TableField(value = "use_flag")
	private String useFlag;

	/**
	 * 来源
	 */
	@TableField(value = "src")
	private String src;

	/**
	 * 备注
	 */
	@TableField(value = "remarks")
	private String remarks;

	/**
	 * 废弃日期
	 */
	@TableField(value = "discard_date")
	@JsonFormat(pattern = "yyyy-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private LocalDate discardDate;

	/**
	 * 更新人
	 */
	@TableField(value = "update_name")
	private String updateName;

	/**
	 * 备注
	 */
	@TableField(value = "data_code")
	private String dataCode;

	/**
	 * 备注
	 */
	@TableField(value = "status_name")
	private String statusName;

	/**
	 * 直径
	 */
	@TableField(value = "diameter")
	private Integer diameter;

	/**
	 * 长度
	 */
	@TableField(value = "length")
	private Integer length;

	/**
	 * 工厂里面设备号 1 -8
	 */
	@TableField(value = "device_code")
	private String deviceCode;

	/**
	 * 300   500  800  离心机型号
	 */
	@TableField(value = "device_no")
	private String deviceNo;

	/**
	 * 模具释放日期
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@TableField(value = "release_time")
	private Date releaseTime;

	/**
	 * 模具释放班次
	 */
	@TableField(exist = false)
	private Integer releaseTimeGap;
}
